Mobile credential revocation

ABSTRACT

Managing validity status of at least one associated credential includes providing a credential manager that selectively validates associated credentials for at least one device, the device invalidating a corresponding associated credential, and the device requesting that the credential manager validate the corresponding associated credential after invalidating the associated credential. The associated credential may be invalidated based on an external event, such as a user invalidating the associated credential from a UI of the device, a user improperly entering a pin value, a user indicating that a corresponding device is lost, the device entering sleep mode, the device locking a user interface thereof, the device shutting down, and a particular time of day. The at least one associated credential may be provided on an integrated circuit card (ICC) that may be part of a mobile phone and/or a smart card.

RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.14/287,289 filed May 27, 2014 (pending), which is a continuation of U.S.application Ser. No. 14/240,496 filed Feb. 24, 2014 (abandoned), whichis a National Stage of International App. No. PCT/US2012/053479 filedAug. 31, 2012, and claims priority to U.S. Provisional application61/529,536 filed Aug. 31, 2011, which are all incorporated herein byreference.

TECHNICAL FIELD

This application is related to the field of digital credentialmanagement and, more particularly, to the field of digital credentialmanagement using multiple entities.

BACKGROUND OF THE INVENTION

Credentials consist of data that can be used to prove of ownership ofprivilege, role, rights, etc. (i.e., an assertion) and generally includeor are constructed a secret, policy information, event parameters, avalue or identity assertion and/or an authentication function that bindsthe secret and the parameters with the assertion. Example credentialsinclude PKI certificates and the corresponding private keys, such asX.509 certificates and associated private keys. Other examplecredentials are HID iCLASS, One Time Passwords based on Symmetric Keys,or simply a password and an account identifier. Since the secret part ofthe credential needs protection, the secret part of the credentials maybe located in a secure element. UICC, SIM, MicroSDs, and EmbeddedHardware Security modules are examples of Secure elements provided, forexample, on a mobile phone.

A credential may be revoked if the assertion corresponding to thecredential is no longer true. For example, if a user leaves anorganization, then a user's credentials that allow physical access tothe facilities of the organization may need to be revoked. There are anumber of mechanisms for revoking credentials, including, for example,disabling use of a credential associated to a mobile phone at acredential verification back office or by requesting the credentialissuer to set the credential status to revoked and then publishing thecredential status. Known credential revocation techniques may berelatively slow, expensive and not very scalable and may adverselyimpact credential verification systems. For example, X.509 certificaterevocation systems require the publication and distribution ofcertificate revocation lists (CRLs) from the credential issuer, or theuse of certificate status responders, both of which may be inherentlytime delayed so that, depending on the frequency of revocation and thetime it takes to distribute the CRLs, there may some time in which thecredential can still be used after the credential has been revoked.

It is desirable to provide a system that addresses shortcomings of knowncredential revocation systems.

SUMMARY OF THE INVENTION

According to the system described herein, managing validity status of atleast one associated credential includes providing a credential managerthat selectively validates associated credentials for at least onedevice, the at least one device invalidating a corresponding associatedcredential and the at least one device requesting that the credentialmanager validate the corresponding associated credential afterinvalidating the associated credential. The associated credential may beinvalidated after a time period. Invalidating the correspondingcredential may limit scope of use of the credential and/or prevent useof the credential while validating the credential may allow use of thecredential. The credential manager may include a credential validationfunction and/or a credential revocation function. The associatedcredential may be invalidated based on an external event. The externalevent may be selected from the group consisting of one or more of: auser invalidating the associated credential from a UI of the at leastone device, a user improperly entering a pin value, a user indicatingthat a corresponding device is lost, the at least one device enteringsleep mode, the at least one device locking a user interface thereof,the at least one device shutting down, the device losing connection to anetwork, the device leaving a location or area, the device configurationchanging, and a particular time of day. The at least one associatedcredential may be provided on an integrated circuit card (ICC). The ICCmay be part of a mobile phone and/or a smart card. The at least oneassociated credential may be provided within a trusted executionenvironment of a device. The at least one associated credential may beinvalidated based on an internal event. The internal event may beselected from the group consisting of one or more of: a counter reachinga limit, a clock reaching a limit, a configuration change of the trustedexecution environment, and a configuration change of the ICC. The atleast one associated credential may be implemented using one of: iCLASS,Elliptic Curve Cryptography (ECC), X.509, Card Verifiable Certificate,and symmetric key cryptography and wherein the primary credential is anX.509 digital certificate. Managing validity status of at least oneassociated credential may also include the credential manager receivingexternal input indicating that the corresponding associated credentialshould not be validated. The external input may be provided by a user.The associated credential may be invalidated after the credential isused. Validation of the associated credential may includes validation ofa primary credential and the associated credential may be deemed invalidwhen the primary credential is invalid.

According further to the system described herein, computer software,provided in a non-transitory computer-readable medium, manages validitystatus of at least one associated credential. The software includesexecutable code that selectively validates associated credentials for atleast one device, where the at least one device invalidates acorresponding associated credential and executable code that receives arequest from the at least one device that the credential managervalidate the corresponding associated credential after invalidating theassociated credential. The associated credential may be invalidatedafter a time period. Invalidating the corresponding credential may limitscope of use of the credential and/or prevent use of the credentialwhile validating the credential may allow use of the credential. Thecredential manager may include a credential validation function and/or acredential revocation function. The associated credential may beinvalidated based on an external event. The external event may beselected from the group consisting of one or more of: a userinvalidating the associated credential from a UI of the at least onedevice, a user improperly entering a pin value, a user indicating that acorresponding device is lost, the at least one device entering sleepmode, the at least one device locking a user interface thereof, the atleast one device shutting down, the device losing connection to anetwork, the device leaving a location or area, the device configurationchanging, and a particular time of day. The at least one associatedcredential may be provided on an integrated circuit card (ICC). The ICCmay be part of a mobile phone and/or a smart card. The at least oneassociated credential may be provided within a trusted executionenvironment of a device. The at least one associated credential may beinvalidated based on an internal event. The internal event may beselected from the group consisting of one or more of: a counter reachinga limit, a clock reaching a limit, a configuration change of the trustedexecution environment, and a configuration change of the ICC. The atleast one associated credential may be implemented using one of: iCLASS,Elliptic Curve Cryptography (ECC), X.509, Card Verifiable Certificate,and symmetric key cryptography and wherein the primary credential is anX.509 digital certificate. The software may also include executable codethat receives an external input indicating that the correspondingassociated credential should not be validated. The external input may beprovided by a user. The associated credential may be invalidated afterthe credential is used. Validation of the associated credential mayinclude validation of a primary credential and the associated credentialmay be deemed invalid when the primary credential is invalid.

According further to the system described herein, a validation systemincludes a credential manager that selectively validates associatedcredentials for at least one device and at least one device, coupled tothe credential manager, that invalidates a corresponding associatedcredential and subsequently requests that the credential managervalidate the corresponding associated credential after invalidating theassociated credential.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the system described herein are explained with referenceto the several figures of the drawings, which are briefly described asfollows.

FIG. 1 is a schematic illustration showing an Integrated Circuit Card(ICC) and a host according to an embodiment of the system describedherein.

FIG. 2 is a schematic illustration showing an Integrated Circuit Card(ICC) with associated and primary credentials according to an embodimentof the system described herein.

FIG. 3 is a flow diagram showing processing in connection withauthenticating and determining revocation status of an associatedcredential accord according to an embodiment of the system describedherein.

FIG. 4 is a schematic illustration showing an Integrated Circuit Card(ICC) with an associated credential and a host with a primary credentialaccording to an embodiment of the system described herein.

FIG. 5 is a schematic illustration showing an Integrated Circuit Card(ICC) with an associated credential and a host where a primarycredential is provided outside the ICC and the host according to anembodiment of the system described herein.

FIG. 6 is a schematic illustration showing a primary credential and aplurality of associated credentials according to an embodiment of thesystem described herein.

FIG. 7 is a schematic illustration showing a credential managementsystem and a plurality of devices that use associated credentialsaccording to an embodiment of the system described herein.

FIG. 8 is a flow diagram showing processing performed by a device inconnection with validating an associated credential accord according toan embodiment of the system described herein.

FIG. 9 is a flow diagram showing processing performed by a device inconnection with invalidating an associated credential accord accordingto an embodiment of the system described herein.

FIG. 10 is a flow diagram showing processing performed by a credentialmanagement system in connection with receiving a request from a deviceto validate an associated credential accord according to an embodimentof the system described herein.

DETAILED DESCRIPTION OF VARIOUS EMBODIMENTS

FIG. 1 is a diagram of a system 100 that includes a host 102 incommunication with an integrated circuit card (ICC) 104. The host 102may be a terminal and/or server with protected access. Generally, thehost 102 may be any other unit or collection of units capable ofestablishing a logical communication channel with a device, such as theICC 104. The host 102 may include a client application 106 and a secureapplication module (SAM) 108. Although discussed principally herein inconnection with use the SAM 108, the system described herein may alsooperate in connection with devices using a trusted platform module(TPM), hardware security module (HSM) and/or other type of cryptographicmodule, such as a software module, or a module embedded in a CPU.Furthermore, although the client application 106 is shown and discussedprincipally herein as a separate component with separate functionalityfrom the SAM 108, in other embodiments, the client application 106 maybe incorporated into the SAM 108.

The ICC 104, such provided on a smart card, mobile phone and/or othersimilar device, communicates with SAM 108 via the host 102 using acontact, contactless interface, USB, or other type of communicationsmechanism. The system 100 may provide secure contact or contactlesscommunication between the ICC 104 and the host 102 using any appropriatemechanism to provide protection from attacks that include skimming,sniffing and man-in-the middle attacks and may provide forward secrecy,as further discussed elsewhere herein. The system described herein mayoperate in compliance with NIST cryptographic mandates, including NISTSP 800-56A or 800-56B (which is incorporated herein by reference), NISTSP 800-57 Part 1, entitled “Recommendation for Key Management” by ElaineBarker et al. (revised, March 2007), which is incorporated herein byreference, and Federal Information Processing Standards (FIPS) 140-2,entitled “Security Requirements for Cryptographic Modules,” May 25,2001, with change notice Dec. 3, 2002, which is incorporated herein byreference. The system 100 may further include the ability to fulfill NSArecommendations on the choice of cryptography (SUITE-B). The system 100may support full secure messaging for application data or key exchange.It should be noted that other appropriate standards may also be utilizedin connection with the system described herein, as would be understoodby one of ordinary skill in the art.

Integration specifications for the host 102, the SAM 108, and/or the ICC104 interfaces may be provided for the system described herein. For theclient application 106, the integration may use a single command fromthe ICC 104 that includes a public key and identification data generatedby the SAM 108. A response by the ICC 104 may be directly forwarded tothe SAM 108 for processing. The SAM 108 may return authenticatedcredentials for the ICC 104. Session keys (e.g., symmetric session keys)may be established on both sides.

In an embodiment herein, the client application 106 calls the SAM 108 togenerate an ephemeral Elliptical Curve (EC) key pair. The clientapplication 106 then sends an authentication command to the ICC 104,including a public ephemeral key. Then, the client application 106forwards the authentication response of the ICC 104 as a secondauthentication command to the SAM 108. If successful, then session keysare established on both sides. The client application 106 buildsapplication protocol data unit (APDU) commands, calls the SAM 108 towrap (encapsulate) the APDU commands, and then sends the wrappedcommands to the ICC 104. In an embodiment, the APDU interface may be anISO 7816-4 card edge interface.

The system 100 may provide authentication, such as PKI authentication,of a smart card and/or mobile phone with a secure element that may bepresented to one or more hosts. The hosts may include one or more hoststhat are part of and/or otherwise incorporated into a door or doorcontroller for controlling physical access and into desktops, laptopsand/or kiosks for controlling logical access. Use of secure messagingprovides an end-to-end protected path for document or transactiondecryption and signatures using the secure element or smart card. Theend-to-end secure messaging may provide for the transport of PIN orbiometrics or physical access control system (PACS) credentials viacontactless communication. The system described herein may also be usedin connection with PKI-based authentication and ticketing for transitapplications. The system described herein may further be used to provideend-to-end post issuance management of the smart card or secure elementin a contact or contactless environment.

Note that authentication of the ICC 104 by the host 102 may includereceiving authentication information from the ICC 104. Theauthentication information from the ICC 104 can take any form, includinga X.509 PKI digital certificate, an EC digital certificate, or someother appropriate form. In some cases, the authentication informationmay be embedded by the manufacturer/issuer of the ICC 104 while in othercases the authentication information may be loaded on to the ICC 104some time after manufacture/issuance. Note that it is also possible tohave a combination where some authentication information is provided bythe manufacturer/issuer and the information is updated and/or replacedat a following time by new authentication information. It is alsopossible to have authentication information on the ICC 104 that does notexpire.

In some cases, authentication information on the ICC 104 may include anexpiration date of the authentication information, after which the ICC104 is no longer considered valid. For example, an X.509 PKI digitalcertificate may contain an expiration date. Once the authenticationinformation on the ICC 104 has expired, a user either obtains a new ICCor updates/replaces the authentication information on the ICC 104 withauthentication information having a new expiration date.

Sometimes it is desirable to revoke authentication information providedon the ICC 104. For example, if the ICC 104 is an identification/accessbadge of an employee that leaves a company, the company would like toimmediately revoke the ICC 104 so that the ex-employee no longer hascompany access. This is especially important in instances where thecompany does not have an opportunity to take physical possession of thebadge, such as when an ex-employee is hostile to the company. In someinstances, authentication information is provided in a form thatprovides an effective revocation mechanism, such as X.509 digitalcertificates. However, in other instances, there may be nostraight-forward revocation mechanism.

Referring to FIG. 2, the ICC 104 is shown in detail as including anassociated credential (CR 1) 502 and a primary credential (CR 2) 504.The associated credential 502 may be used to authenticate the ICC 104while the primary credential 504 may be used to provide revocationstatus for the associated credential 502. The credentials 502, 504 maybe the same type of credential (e.g., both of the credentials 502, 504are X.509 digital certificates) or the credentials 502, 504 may bedifferent types of credentials (e.g., the associated credential 502 usesECC and a Card Verifiable Certificate (CVC) and the primary credential504 is an X.509 digital certificate).

Although the primary and associate credentials 502, 504 may have manythings in common (certificate subject, issuer id, etc.), the credentials502, 504 are cryptographically independent so that there is no direct orindirect cryptographic relationship between the associated credential502 and the primary credential 504. Cryptographic independence may bedistinguished from current PKI technology (and similar), wherecredentials may belong to the same certification path (chain) so thatthe secrets and/or private key associated with one credential are usedto form cryptograms that are necessary to establish trust in anothercredential. Note that cryptographic dependence between two credentialscan be direct or indirect. Cryptographic dependence between credentialsis direct when a cryptographic operation applies one of the secrets/keysof one of the credentials directly to the other one of the credentials.Cryptographic dependence between credentials is indirect when acryptographic operation applies one of the secrets/keys of one of thecredentials to at least one intermediary credential that appliessecrets/keys thereof directly to the other one of the credentials.

The credentials 502, 504 being cryptographically independent means thatno secrets and/or private key associated with one of the credentials502, 504 is used to form cryptograms, directly or indirectly, that arenecessary to establish trust in the other one of the credentials 502,504. Thus, without more (e.g., binding the credentials 502, 504,discussed in detail elsewhere herein), a change in revocation status ofone of the credentials 502, 504 does not automatically change therevocation status of the other one of the credentials 502, 504. This isin contrast with a cryptographically dependent PKI certificate chain,where if a credential higher in the chain is revoked, then a certificatelower in the chain is automatically revoked too.

Following creation of the credentials 502, 504, there is a binding sothat the revocation state of the associated credential 502 is tied tothe revocation state of the primary credential 504 where the associatedcredential 502 is deemed revoked if the primary credential 504 isrevoked. In some cases, the associated credential 502 is deemed notrevoked if the primary credential is not revoked while in other casesthe associated credential 502 may be revoked independently of therevocation state of the primary credential 504. Under such a system, theassociated credential 502, which authenticates the ICC 104, can use anytype of authentication mechanism, including a non-revocableauthentication mechanism.

As an example of using different types of credentials, the ICC 104 maybe used for opening a door for the holder of the ICC 104. The associatedcredential 502 may be implemented using ECC and CVC to facilitate rapidprocessing when the user presents the ICC to the door controller (i.e.,the host 102). The primary credential 504 may be an X.509 certificate.When the ICC 104 provides authentication to the host 102, the host 102can confirm the associated credential 502 to determine whether to openthe door and, in parallel, can check the revocation status of theprimary credential 504 using conventional X.509 certificate revocationdata (i.e., CRL information, OCSP response, etc.). If the primarycredential 504 is revoked, then the associated credential 502 is deemedrevoked. Thus, even if the ICC 104 is properly authenticated using theassociated credential 502 which itself is not revoked, the doorcontroller (host 102) does not open the door if the primary credential504 has been revoked. Accordingly, the system described herein mayprovide for effective revocation of otherwise non-revocable credentials.Note also that, even in instances where the associated credential 502 isrevocable, it may still be advantageous to use the primary credential504 as a surrogate for the revocation status of the associatedcredential 502.

Any appropriate mechanism may be used to bind the cryptographicallyindependent credentials 502, 504. Thus, the binding may be provided by adata structure that relates the two credentials and/or some other dataprovided that is accessible to any entities that rely on the bindingand/or that modify the binding. For example, the binding mechanism maybe an indication at the host 102 that associated credential 502 isdeemed to be revoked if the primary credential 504 is revoked. For afirst alternative, binding the associated credential 502 to the primarycredential 504 may be done by including a reference to the primarycredential 504 within the information for the associated credential 502at the time of issuance of the associated credential 502. For a secondalternative, the binding may be performed by including the same user orunique device identifier in both of the credentials 502, 504 at the timeof issuance of the credentials 502, 504. For either alternative, uponpresentation of the associated credential 502, the host 102 may read thereference to the primary credential 504 from the associated credentialand searches for the revocation status of the primary credential 504 viaa CRL, OCSP or other method.

For another alternative, the binding may be independent of the contentsof the credentials 502, 504 and may be independent of whether any of thecredentials 502, 504 authenticate any other ones of the credentials 502,504. Thus, there may be no binding information provided with thecontents of either of the credentials 502, 504. For instance, an accesscontrol system may determine the binding between the associatedcredential 502 and the primary credential 504 at registration time, whenthe same person can prove ownership of both of the credentials 502, 504

Testing the revocation status of the primary credential 504 may includealso authenticating the primary credential 504, where, if the primarycredential 504 cannot be authenticated, the primary credential 504 isdeemed revoked. Note also that, in some cases, the ICC 104 may simplyidentify an authenticable credential stored in a location outside theICC 104. For example, the ICC 104 could simply identify a serial numberof an X.509 digital certificate (primary credential), which can bechecked against a CRL for revocation status.

Referring to FIG. 3, a flow chart 510 illustrates in detail processingperformed by the host 102 in connection with authenticating the ICC 104when the ICC 104 uses associated and primary credentials 502, 504.Processing begins at a first step 512 where the host 102 obtains theassociated credential 502 (e.g., from the ICC 104). Following the step512 is a test step 514 where it is determined if the associatedcredential 502 is valid. The test at the step 514 determines if theassociated credential 502 is revoked and whether the associatedcredential 502 properly authenticates the ICC 104. Note that theassociated credential 502 may use any appropriate authenticationmechanism and/or revocation mechanism. In some cases, the associatedcredential 502 may use a non-revocable authentication mechanism, inwhich case the test at the step 514 determines authentication of theassociated credential 502 but not revocation status.

If it is determined at the test step 514 that the associated credential502 is valid (properly authenticates the ICC 104 and is not revoked),then control passes from the test step 514 to a step 516 where the host102 obtains the primary credential 504 from the ICC 104. Following thestep 516 is a test step 518 where it is determined if the primarycredential 504 is revoked. As discussed elsewhere herein, in some cases,prior to determining the revocation status of the primary credential504, it may be useful to first authenticate the primary credential 504.Thus, in some cases, the test step 518 may represent a combinedauthentication/revocation test of the primary credential 504.

If it is determined at the test step 518 that the primary credential isrevoked, then control passes from the test step 518 to a step 522 whereaccess denial processing is performed, as discussed elsewhere herein.Following the step 522, processing is complete. Note that the step 522is also reached from the step 514 if the associated credential is notvalid (i.e., is revoked or does not authenticate the ICC 104). Thus, theprimary credential 504 is a surrogate for the associated credential 502in that, if the primary credential 504 is revoked, access is denied justas if the associated credential 502 had been revoked, irrespective ofthe revocation status of the associated credential 502 and evenirrespective of whether the associated credential 502 is revocable atall. If it is determined at the test step 518 that the primarycredential is not revoked, then control passes from the test step 518 toa step 524 where access is allowed. Following the step 524, processingis complete.

Note that, although the associated credential 502 is deemed revoked ifthe primary credential 504 is revoked, the reverse may not necessarilybe true. That is, in some embodiments, the associated credential 502 maybe revoked independently of the revocation status of the primarycredential 504 so that the associated credential 502 is revoked but theprimary credential 504 is not. In other embodiments, such as embodimentswhere the associated credential 502 is irrevocable, the revocation stateof the associated credential 502 tracks the revocation state of theprimary credential 504.

Referring to FIG. 4, a diagram 530 illustrates an alternativeconfiguration in which the associated credential 502 is provided withthe ICC 104, but a primary credential 504′ is stored on the host 102.The primary credential 504′ is used just like the primary credential 504described elsewhere herein, except that, instead of being stored on theICC 104, the primary credential 504′ is provided on the host 102. Thus,for the configuration illustrated by the diagram 530, it is notnecessary for the host 102 to obtain the primary credential 504′ fromthe ICC 104. The primary credential 504′ may be provided to the host 102from any number of sources, including an initial transfer from the ICC104, a secure transfer over the Internet from a remote host (not shown),a user inserting a USB drive or a disk (containing the primarycredential 504′) into a reader at the host 102, etc.

Referring to FIG. 5, a diagram 540 illustrates an alternativeconfiguration in which the associated credential 502 is provided withthe ICC 104, but a primary credential 504″ is stored outside both thehost 102 and the ICC 104. The primary credential 504″ is used just likethe primary credential 504 and the primary credential 504′ describedelsewhere herein, except that, instead of being stored on either thehost 102 or the ICC 104, the primary credential 504″ is providedexternal to both. Thus, for the configuration illustrated by the diagram540, the host 102 obtains the primary credential 504″ from a sourceother than the ICC 104, such as from a remote host (not shown) thattransfers the primary credential 504″ using a secure channel. Thetransfer may be over the Internet or by some other medium. In someembodiments, the primary credential 504″ may be provided on a second ICC104′ that is separate from the ICC 104 that contains the associatedcredential 502.

In some embodiments, it may be the responsibility of the entity relyingon the revocation status (e.g., the host 102) to locate the primarycredential 504″. If the primary credential 504″ is transferred to theICC 104, then the system may operate like that illustrated in FIG. 2 anddescribed above. Alternatively, if the primary credential 504″ istransferred to the host 102, then the system may operate like thatillustrated in FIG. 4 and described above. In some embodiments, it isnot necessary to provide the primary credential 504″ itself, but onlyinformation about the primary credential 504″ (e.g., serial number) sothat the revocation status of the primary credential 504″ can bechecked.

As an example of the system illustrated in FIG. 5, the ICC 104 maycorrespond to a cell phone issued to a user. The host 102 may correspondto a door controller that opens a secure door. The associated credential502 is stored in the cell phone that the user presents to the host 102to open the door. The user may also have a PIV card that corresponds tothe second ICC 104′ and that contains the primary credential 504″. Solong as the primary credential 504″ is not revoked, the user can openthe door using the associated credential 502 on the ICC 104 (cellphone). However, if the host 102 detects that the primary credential504″ has been revoked (e.g., the PIV card 104′ is no longer valid), thenthe host 102 deems the associated credential 502 to also be revoked sothat the ICC 104 (cell phone) can no longer be used to open the securedoor. If the cell phone (ICC 104) is lost or stolen, but the PIV (secondICC card 104′) is not, it may be possible to revoke the associatedcredential 502, but not the primary credential 504″. Thus, revocation ofthe primary credential 504″ guarantees revocation of the associatedcredential 502, but non-revocation of the primary credential 504″ doesnot guarantee non-revocation of the associated credential 502.

Referring to FIG. 6, a diagram 550 illustrates a primary credential 552being bound to a plurality of associated credentials 554-556. Revocationstatus of all of the associated credentials 554-556 varies according tothe revocation status of the primary credential 552. Thus, if theprimary credential 552 is revoked, all of the associated credentials554-556 are deemed revoked. One use of a system like that illustrated bythe diagram 550 is a situation where each of the associated credentials554-556 relates to a separate device that a user is issued as anemployee of a company (e.g., cell phone, parking pass, access card,etc.) and the revocation state of the primary credential 552 correspondsto the user's employment status with the company. If the user leaves thecompany, the primary credential 552 is revoked, thus causing all of theassociated credentials 554-556 to be effectively revoked.

In some embodiments, the primary credential may contain a pointer orother identifier that indicates the associated credential(s). It is alsopossible for the associated credential(s) to contain pointer(s) or otheridentifier(s) that indicates the primary credential. In otherembodiments, none of the primary credential or the associatedcredential(s) contain any indication of the others. It is also possiblefor one or more of the associated credentials to have the same or asimilar identifier as the primary credential. In other embodiments, theidentifiers may be independent. One or more of the associated andprimary credentials may be authenticated, at least partially, by anotherone of the associated and primary credentials. Note that the systemdescribed herein may be used in instances where the associatedcredential is not revocable (and/or not easily revocable), but it isstill desirable to provide an expiration of the ICC 104 after apredetermined amount of time (e.g., one year) by revoking the primarycredential.

An example of the system described herein is to use Elliptic curveauthentication keys or symmetric device authentication keys on a PIVcard to accelerate contactless PKI authentication at a door. A key pairand a Card Verifiable Certificate (CVC) may be used as a primarycredential to authenticate the personal authentication device. Theprimary credential may be located on the same device as the PIV card,but may be logically separated from the PIV application, and provide adifferent level of trust. A secure channel session key established fromthe CVC authentication may be used to authenticate a reference to a PIVcertificate that is encrypted with the session key. Accordingly, the PIVcertificate reference is bound to the session keys and the static keyand CVC. Since the reference to the PIV certificate is trusted to bebound to the keys and the device, the verification process at the doorcontroller may verify the PIV certificate revocation status andadditional attributes such as its expiration date to determine if thedevice being presented is valid.

Another example is a primary credential that is located on a devicedistinct from the device holding the primary PKI certificate. Anembedded secure element of a mobile phone may use iCLASS keys forauthentication that are bound to the primary PIV credential stored inthe original separate PIV card of the device owner. The mobile phone maybe used to access a mass transit system using the iCLASS keys. Using theprocess described herein, the mobile phone provides the identifier ofthe primary PIV card certificate, authenticated from the iCLASS keys.The primary PIV certificate status may be retrieved and used at the doorcontroller to determine if the mobile phone can be considered a validdevice.

It may also be desirable to provide other light weightrevocation/invalidation techniques for credentials installed in mobiledevices that are often connected. For example, an NFC phone containingiCLASS credential may be protected by a secure element such as microSDor UICC used for allowing physical access. The same phone andcorresponding credentials may be used at physical access systems inwhich it is registered. The phone may perform a challenge-responsethrough the NFC interface to authenticate to the door controller. Thecredential consists of a CVC and elliptic curve private key inside thesecure element. The physical access system may be independent from thecredential issuance system but trusts the issuance system and theprotection of the credential. If the NFC phone is lost, an attackercould potentially gain illicit entry to buildings in which the phone'scredential is registered. It may be impractical for the phone's owner toinsure that the credential has been deactivated, so automatedactivation/deactivation mechanisms may be considered.

In an embodiment of the system described herein, the phone or mobiledevice owner would contact the credential issuer, validation ormanagement system to report a lost or stolen phone or device and thecredential issuer, validation or management system would invalidate thecredential. Invalidating the credential may result in temporarilyrevoking the credential and update its revocation/validity status in thecredential issuer, management or validation system. Invalidating thecredential may also result in deactivating the credential on the device,or temporarily disable or partially limit its scope of use from thedevice. Alternately a credential manager may invalidate the credentialif some event occurs such as an account termination. In anotherembodiment, the phone or device itself may determine that the credentialshould be automatically invalidated. A credential may be disabled ordeactivated on the device following a time delay after its activation,following an explicit deactivation from the UI, following a locking ofthe device or after entering sleep mode, etc. In another embodiment, thephone or mobile device may deactivate the credential when the phonecannot determine that the correct owner is present. For example, thecredential may be disabled if a PIN used to unlock the phone is enteredincorrectly after several attempts, if a voice mail password is enteredwrong after several attempts, or if the phone determines that the voiceon the initiating side of a call does not belong to the owner. Inanother embodiment, the phone or mobile device may automaticallydeactivate the credential when it leaves a specific location or areausing GPS information, or when the device connection to a network islost or interrupted, such as LAN, WAN, Bluetooth, Wi-fi. In anotherembodiment, the phone or mobile device may automatically deactivate thecredential when the device configuration changes, such as deviceOperating System update.

When a credential is invalidated or revoked, the logical or physicalaccess systems will not need to process any revocation information, andthe effect of revocation/invalidation will invariably be shorter andmore convenient. Also, the solution can occur without effect on thephone owner, i.e. all the revocation/invalidation mechanisms happen inthe background.

As described above, when associated credentials are used (e.g., on acell phone), the life cycle of such associated credentials may beconditioned on the primary credential, such as a PIV certificate. Theassociated credential may be used to authenticate a correspondingdevice, but the credential management system or physical access systemmay check the primary credential revocation status in instances wherethe revocation status conditions the validity of the associatedcredential. However, there may be instances where it is desirable tocause an associated credential to be revoked and/or invalidated withoutrevoking a primary credential. For example, if a PIV certificate is usedfor the primary credential, and there are a significant number ofassociated credentials, including credentials associated with a user'scell phone, it is desirable to not have to revoke the PIV card (and thuscause all of the associated credentials to be revoked) when the userloses only his cell phone.

The system described herein includes a device requesting validation ofan associated credential from a credential issuance or managementsystem, with the authorization to enable, activate, create or replacethe credential that was previously invalidated, deactivated, disabled,deleted or if the scope of use of the credential has been partiallylimited. For example, a cell phone may request credential validationfrom a credential management system or a credential validation system.This may occur upon user authentication to the device, or upon explicituser request before using the credential, or immediately after adisabling event is processed, or with periodic attempts if thecredential is disabled, or when the device is first connected to anetwork, such as LAN, WAN, Bluetooth, Wi-fi, or when the device islocated nearby a facility, according to GPS location coordinates, orrelative location information, or upon an event that occurs after thecredential has been disabled.

The credential manager or credential validation system revokes and/orinvalidates credentials. The credential manager or credential validationsystem may or may not authorize the re-enablement, re-activation,renewal of the credential after the device has contacted the credentialmanagement or validation system, and the credential may be maintained inan invalid, revoked state or a state of limited use. If an authorizedparty (e.g., an owner) has indicated that a invalidated or revokedcredential should not be validated, enabled, activated, then the servermay simply not authorize a new/revised credential for the device. Insome cases, the server may conditionally authorize one or morecredentials for a device based on appropriate criteria. For example, ifa device is used for physical access, then the server may only authorizethe device at particular times (e.g., weekdays between 8:00 am and 6:00pm).

Disabling associated credentials may be performed in a secure manner. Insome cases, if the associated credential relies on a secure element(e.g., tamper-proof chip), or a trusted execution environment, it may bedesirable that the secure element is not disabled by an external event,but, instead, by an internal event from the trusted domain defined bythe secure element (ICC) or the trusted execution environment. In somecases an counter or clock managed within the trusted domain (rather thanan external counter or external clock) may be used to determine when toperiodically revoke/disable associated credentials. Alternatively, anexternal clock event may be used to disable a credential shortly afterthe credential has been used, which may be long before the device (e.g.,cell phone) is lost and used for attacks. Credential invalidation mayoccur in response to a configuration change of the trusted executionenvironment and/or the ICC. A user may cause invalidation of credentialsfor a device right before the device is used for access.

Referring to FIG. 7, a diagram 600 illustrates a credential manager 602and a plurality of devices 604-60.6 that use associated credentials thatare managed by the credential manager 602. In an embodiment herein, thecredential manager 602 also manages and/or authenticates the primarycredential and/or validates the primary credential revocation/validitystatus. The devices 604-606 communicate with the credential manager 602to request validation of associated credentials used by the devices604-606. As described in more detail elsewhere herein, the credentialmanager 602 may selectively revalidate associated credentials dependingupon various criteria based, at least in part, on external input. Forexample, the owner of a lost device may instruct the credential manager602 to invalidate the associated credential for the device so that noone else can use the device (e.g., for physical access).

Referring to FIG. 8, a flow diagram 610 illustrates a processingperformed by a device that uses an associated credential. Processingbegins at a first step 612 when a validating event occurs. As describedelsewhere herein, a validating event is any event that causes the deviceto need/desire a valid associated credential. For example, if the deviceis a cell phone, the validating event may be the user anticipating needthe cell phone for physical access and then manually engaging the systemto cause the cell phone to have a valid credential. It is also possiblefor a validating event to be automatic (e.g., the credential wasrecently invalidated, a specific amount of time has passed, the devicechanges state, the device environment is trusted, or meets thecredential usage conditions, etc.).

Following the step 612 is a test step 614 where it is determined is theassociated credential is already valid. In some cases, the state of theassociated credential and the validating event may be independent sothat the validating event can occur even if the credential is alreadyvalid. For example, the device may already have a valid associatedcredential when a user manually engages the validation mechanism for thedevice. If it is determined at the test step 614 that the device alreadyhas a valid associated credential, then processing is complete.Otherwise, control transfers from the step 614 to a step 616 where thedevice requests validation from the credential manager. As discussedelsewhere herein, the credential manager may or may not validate theassociated credential. Following the step 616, processing is complete.

Referring to FIG. 9, a flow diagram 620 illustrates steps performed inconnection with an invalidating event occurring at the device. Asdiscussed elsewhere herein, an associated credential may become invalidbased on many different types of events and/or criteria. For example, anassociated credential may be invalidated after a certain amount of timehas passed, based on a user incorrectly entering a pin too many times, achange of state of the device, etc. It may also be possible for thecredential manager to push a command to the device to cause theassociated credential to become invalid.

Processing for the flow diagram begins at the step 622 where theinvalidation event occurs. Following the step 622 is a step 624 wherethe device invalidates the associated credential or causes theassociated credential to become invalidated. In some embodiments, theassociated credential may be invalidated by altering or erasing some orall of the data for the associated credential. This may result inlimiting or preventing its use. Following the step 624, processing iscomplete.

Referring to FIG. 10, a flow diagram 650 illustrates processingperformed by the credential manager in connection with receiving arequest from a device to validate (reauthorize) an associated credentialfor the device. Processing begins at a first step 652 where thecredential manager receives a request to validate an associatedcredential. Following the step 652 is a test step 654 where thecredential manager determines if it is OK to validate the associatedcredential. As discussed elsewhere herein, in some instances, thecredential manager may not validate an associated credential based on anexternal event, such as the user has reported a corresponding devicelost or stolen, a particular time of day (e.g., providing physicalaccess only at certain times), a user invalidating the associatedcredential from a UI of the device, a user improperly entering a pinvalue, the device entering sleep mode, the device locking its userinterface, the device shutting down, etc.

If it is determined at the step 654 that it is not OK to validate theassociated credential, then processing is complete. Otherwise, controltransfers from the test step 654 to a step 656 where the credentialmanager provides validation for the associated credential and, ifnecessary, provides appropriate information to the device to thevalidation. Following the step 656, processing is complete.

The system described herein may be used with anyauthentication/validation technique or combination of techniques.Various embodiments discussed herein may be combined with each other inappropriate combinations in connection with the system described herein.Additionally, in some instances, the order of steps in the flowcharts orflow diagrams may be modified, where appropriate. Further, variousaspects of the system described herein may be implemented usingsoftware, hardware, a combination of software and hardware and/or othercomputer-implemented modules or devices having the described featuresand performing the described functions. Software implementations of thesystem described herein may include executable code that is stored in acomputer readable storage medium and executed by one or more processors.The computer readable storage medium may include a computer hard drive,ROM, RAM, flash memory, portable computer storage media such as aCD-ROM, a DVD-ROM, a flash drive and/or other drive with, for example, auniversal serial bus (USB) interface, and/or any other appropriatetangible storage medium or computer memory on which executable code maybe stored and executed by a processor. The system described herein maybe used in connection with any appropriate operating system.

Other embodiments of the invention will be apparent to those skilled inthe art from a consideration of the specification or practice of theinvention disclosed herein. It is intended that the specification andexamples be considered as exemplary only.

The invention claimed is:
 1. A method of managing validity status of atleast one associated credential, comprising: providing a credentialmanager that selectively validates associated credentials for at leastone device; the at least one device invalidating a correspondingassociated credential following the corresponding associated credentialbeing used; and the credential manager automatically re-validating thecorresponding associated credential after invalidating the associatedcredential in response to a validating event, wherein validation of theassociated credential includes validation of a primary credential andwherein the associated credential is deemed invalid when the primarycredential is invalid.
 2. The method, according to claim 1, whereininvalidating the credential prevents or limits use of the credential andwherein validating the credential allows use of the credential.
 3. Themethod, according to claim 1, wherein the associated credential isinvalidated based on an external event selected from the groupconsisting of one or more of: a user invalidating the associatedcredential from a UI of the at least one device, a user improperlyentering a pin value, a user indicating that a corresponding device islost, the at least one device entering sleep mode, the at least onedevice locking a user interface thereof, the at least one deviceshutting down, the device losing connection to a network, the deviceleaving a location or area, the device configuration changing, and aparticular time of day.
 4. The method, according to claim 1, wherein theat least one associated credential is one of: provided on an integratedcircuit card (ICC) and provided within a trusted execution environmentof a device.
 5. The method, according to claim 4, wherein the ICC ispart of one of: a mobile phone and a smart card.
 6. The method,according to claim 1, wherein the at least one associated credential isinvalidated based on an internal event selected from the groupconsisting of one or more of: a counter reaching a limit, a clockreaching a limit, a configuration change of the trusted executionenvironment, and a configuration change of the ICC.
 7. The method,according to claim 1, wherein the at least one associated credential isimplemented using one of: iCLASS, Elliptic Curve Cryptography (ECC),X.509, Card Verifiable Certificate, and symmetric key cryptography andwherein the primary credential is an X.509 digital certificate.
 8. Themethod, according to claim 1, further comprising: the credential managerreceiving external input indicating that the corresponding associatedcredential should not be validated.
 9. The method, according to claim 8,wherein the external input is provided by a user.
 10. Computer software,provided in a non-transitory computer-readable medium, that managesvalidity status of at least one associated credential, the softwarecomprising: executable code that selectively validates associatedcredentials for at least one device, wherein the at least one deviceinvalidates a corresponding associated credential following thecorresponding associated credential being used; and executable code thatreceives a request from the at least one device indicating that thecredential manager automatically re-validated the correspondingassociated credential after invalidating the associated credential inresponse to a validating event, wherein validation of the associatedcredential includes validation of a primary credential and wherein theassociated credential is deemed invalid when the primary credential isinvalid.
 11. The computer software, according to claim 10, whereininvalidating the credential prevents or limits use of the credential andwherein validating the credential allows use of the credential.
 12. Thecomputer software, according to claim 10, wherein the associatedcredential is invalidated based on an external event selected from thegroup consisting of one or more of: a user invalidating the associatedcredential from a UI of the at least one device, a user improperlyentering a pin value, a user indicating that a corresponding device islost, the at least one device entering sleep mode, the at least onedevice locking a user interface thereof, the at least one deviceshutting down, the device losing connection to a network, the deviceleaving a location or area, the device configuration changing, and aparticular time of day.
 13. The computer software, according to claim10, wherein the at least one associated credential one of: provided onan integrated circuit card (ICC) and provided within a trusted executionenvironment of a device, wherein the ICC is part of one of: a mobilephone and a smart card.
 14. The computer software, according to claim10, wherein the at least one associated credential is invalidated basedon an internal event selected from the group consisting of one or moreof: a counter reaching a limit, a clock reaching a limit, aconfiguration change of the trusted execution environment, and aconfiguration change of the ICC.
 15. The computer software, according toclaim 10, wherein the at least one associated credential is implementedusing one of: iCLASS, Elliptic Curve Cryptography (ECC), X.509, CardVerifiable Certificate, and symmetric key cryptography and wherein theprimary credential is an X.509 digital certificate.
 16. The computersoftware, according to claim 10, further comprising: executable codethat receives an external input indicating that the correspondingassociated credential should not be validated.
 17. The computersoftware, according to claim 16, wherein the external input is providedby a user.
 18. A validation system, comprising: a credential managerthat selectively validates associated credentials for at least onedevice; and at least one device, coupled to the credential manager, thatinvalidates a corresponding associated credential following thecorresponding associated credential being used, wherein the credentialmanager automatically validates the corresponding associated credentialafter invalidating the associated credential in response to a validatingevent, wherein validation of the associated credential includesvalidation of a primary credential and wherein the associated credentialis deemed invalid when the primary credential is invalid.